package org.dromara.oce.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.mybatis.core.domain.BaseEntity;

import java.io.Serial;
import java.time.LocalDateTime;

/**
 * 巨量项目广告任务记录对象 oce_template_task
 *
 * @author dsbb
 * @date 2025-07-04
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("oce_template_task")
public class OceTemplateTask extends BaseEntity  {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 任务id
     */
    @TableId(value = "task_id", type = IdType.AUTO)
    private Long taskId;

    /**
     * 管家账号
     */
    private Long accountId;

    /**
     * 广告主账号
     */
    private Long advertiserId;

    /**
     * 投手名
     */
    private String createName;

    /**
     * 任务名称
     */
    private String name;

    /**
     * 短剧名
     */
    private String dramaTitle;
    /**
     * 广告类型
     */
    private String promotionType;

    /**
     * 创建项目完整json
     */
    private String projectJson;

    /**
     * 提交项目数量
     */
    private Integer projectNum;

    /**
     * 提交广告数量
     */
    private Integer promotionNum;

    /**
     * 提交项目、广告json
     */
    private String projectPromotionJson;

    /**
     * 执行状态：0-未执行；1-执行完成；
     */
    private Integer executeStatus;

    /**
     * 提交类型：0-同步提交；1-异步提交；2-定时提交；
     */
    private Integer submitType;

    /**
     * 定时发布时间
     */
    private LocalDateTime pushTime;

    /**
     * 成功数量
     */
    private Integer successNum;

    /**
     * 失败数量
     */
    private Integer failNum;

    /**
     * 备注描述
     */
    private String remark;


}
